הוספת כפתור ה"לייק" לאתרים הכתובים בשפת PHP, ולא מבוססים מערכות CMS מתקדמות (Wordpress, Joomla ועוד...).
ניתן למצוא ברשת מס' רב של מדריכים המסבירים כיצד יש להוסיף את הפונקציה ובנוסף לקבל מידע מפייסבוק, אך במדריך זה מוסבר כיצד להוסיף את כפתור ה"לייק" לאתרים שלא מבוססים על מערכות CMS מתקדמות (Wordpress, Joomla ועוד...).
רעיון ה"לייק" מבוסס על פונקציה ששואבת את כתובת המיקום של הדף אותו מעוניינים לפרסם.
אם כך, בשלב ראשוני נציב פונקציה השואבת את מיקום הדף ברשת:
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
את הקוד יש להוסיף בדף בו אתם שומרים את כל הפונקציות של האתר או בדפים הדינמיים שלכם.
בעזרת הקוד אנו מקבלים משתנה $pageURL שבעצם מכיל את כתובת הדף אותו נדרש לפרסם.
לאחר שקיבלנו את כתובת URL נוסיף אותו לקוד שניתן לקבל באתר פייסבוק או בכל מדריך אחר:
<iframe src="http://www.facebook.com/plugins/like.php?href=<?php curPageURL()?>" BORDER="0" MARGINWIDTH="0" MARGINHEIGHT="0" HSPACE="0"
FRAMEBORDER="0" SCROLLING="no" width="600" height="65"></iframe>
FRAMEBORDER="0" SCROLLING="no" width="600" height="65"></iframe>
קוד זה יוסיף לאתרכם כפתור "לייק". השיטה מתייחסת לדף עם סיומת PHP.
חשוב להדגיש, הפונקציה לא נבדקה באתרים מבוססים Wordpress או Joomla.
תגובות לכתבה:
אני עושה את אותה פעולה עם javascript באופן הבא:
var loc = window.location.protocol + '//' + window.location.hostname + '/' + window.location.pathname;
לא יותר קל לעשות ככה:
$address = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo $address; ?>" BORDER="0" MARGINWIDTH="0" MARGINHEIGHT="0" HSPACE="0"
FRAMEBORDER="0" SCROLLING="no" width="600" height="65"></iframe>
תודה רבה !!, לא בידיוק הבנתי למה הקוד הזה?
כלומר לא יותר קל לקחת פשוט את המדריך הלייק מהאתר של פיסבוק ?
הקוד שאתה יוצר בעמוד של פייסבוק הוא קוד של כפתור לייק לכלל האתר או לכתובת אחת ספציפית. אם אתה צריך כפתור לייק נפרד לכל עמוד (כמו שיש פה אחד לכל האתר ואחד לכל כתבה בנפרד) אז אתה צריך את הקוד הזה.
הקוד הרגיל מהאתר של פייסבוק לא נותן מענה לאתר שבנוי בPHP
אז אם אני רוצה לכל האתר אז אפשר לעשות:
$address = 'http://'.$_SERVER['SERVER_NAME'];
<iframe src="http://www.facebook.com/plugins/like.php?href=<?php echo $address; ?>" BORDER="0" MARGINWIDTH="0" MARGINHEIGHT="0" HSPACE="0"
FRAMEBORDER="0" SCROLLING="no" width="600" height="65"></iframe>
ואם גולשים אליך ב https או השרת שלך לא ממוקם על פורט 80 ?
אתה צודק :P
יש לי שגיאה בשורה:
if($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
השגיאה:
( ! ) Notice: Undefined index: HTTPS in C:\wamp\www\minerva-books.co.il\variables.php on line 10
תחליף ב
if( strpos('https', $_SERVER["SERVER_PROTOCOL"]) !== false) ...
תודה D:
אוקיי, תודה רבה על התשובה !, ותגידו אני יכול לעשות את זה גם למשחקים כלומר כל משחק לייק ?
באתר משחקים און ליין הכוונה
כן, כל עוד לכל עמוד יש כתובת משלו אתה יכול להשתמש בקוד הזה כדי לשים כפתור לייק לאותו עמוד.